Carlos Garnacho [Mon, 20 Dec 2010 22:04:44 +0000 (23:04 +0100)]
Strengthen checks in functions taking a GdkDevice
Docs have also been improved, to make explicit the device
type/source accepted.
Carlos Garcia Campos [Sun, 12 Dec 2010 11:54:47 +0000 (12:54 +0100)]
printing: Set new print operation settings before emitting custom-widget-apply signal
So that custom settings can be added from the custom-widget-apply
callback.
https://bugzilla.gnome.org/show_bug.cgi?id=637069
Havoc Pennington [Mon, 20 Dec 2010 18:04:45 +0000 (13:04 -0500)]
Always emit unmap when a widget is unmapped
Previously, for performance reasons we would sometimes
skip invoking the unmap signal (and associated vfunc)
in favor of simply unrealizing. However, widgets then
had no way to clean stuff up when they were hidden
(but still inside a parent which was shown).
This patch also removes _gtk_tooltip_hide() which
was done in both unmap and unrealize in gtkwidget.c,
now can only be in unmap.
There are probably lots of things cleaned up in
unrealize that would now be better to move to unmap.
https://bugzilla.gnome.org/show_bug.cgi?id=629923
Havoc Pennington [Mon, 20 Dec 2010 17:58:04 +0000 (12:58 -0500)]
Add invariant that a child is unmapped if parent is unmapped
Requires fixes to GtkContainer and GtkWindow to unmap their
children, rather than just withdrawing or hiding the container
window.
Requires fix to GtkHandleBox to chain up to GtkContainer unmap.
Historically we avoided these unmaps for efficiency reasons,
but these days it's a bigger problem that there's no way
for child widgets to know that one of their ancestors has
become unmapped.
Havoc Pennington [Mon, 20 Dec 2010 17:46:51 +0000 (12:46 -0500)]
Verify GtkWidget invariants if G_ENABLE_DEBUG is defined
These checks are a bit expensive so require --enable-debug=yes.
gtk_widget_verify_invariants() checks invariants mentioned
in docs/widget_system.txt in particular, and can verify
others in the future.
Some of the invariants in docs/widget_system.txt don't
in fact hold right now, so those are #if 0'd in this
patch pending someone fixing either the docs or the code.
Matthias Clasen [Mon, 20 Dec 2010 17:28:05 +0000 (12:28 -0500)]
Make GtkEntry hide completely
When it was converted to no-window, we forgot to make it hide/show
its input window as necessary.
Matthias Clasen [Mon, 20 Dec 2010 16:38:31 +0000 (11:38 -0500)]
Update GtkAboutDialog documentation
Also, remove some dead code, pointed out in bug 637608.
Carlos Garnacho [Mon, 20 Dec 2010 16:10:27 +0000 (17:10 +0100)]
Make gtk_style_new() use a backing GtkStyleContext
Fixes a bug in mutter where it would resort to a dummy style
to get iconview rubberband color.
Reported by Mathieu Bridon in
https://bugzilla.gnome.org/show_bug.cgi?id=637520
Matthias Clasen [Mon, 20 Dec 2010 15:19:55 +0000 (10:19 -0500)]
Remove reference to GTK2_RC_FILES from the docs
Pointed out in bug 637471.
Cosimo Cecchi [Wed, 15 Dec 2010 10:58:29 +0000 (11:58 +0100)]
appchooserdialog: use new GLib API to modify positioning
The dialog will always show up with the last selected application.
Matthias Clasen [Mon, 20 Dec 2010 15:02:00 +0000 (10:02 -0500)]
Use g_strtod when converting strings for GtkCellRendererSpin
These strings are likely user-provided values, so we should
respect locale settings.
Reported in bug 637189.
Matthias Clasen [Mon, 20 Dec 2010 12:15:46 +0000 (07:15 -0500)]
Add a test for basic style properties
Carlos Garnacho [Mon, 20 Dec 2010 12:48:10 +0000 (13:48 +0100)]
Disable XI2 in gtk_test_init()
gdk_test_simulate_*() uses XSendEvent, which doesn't currently work
with XI2/GenericEvents, so make tests use core events for the time
being. Luckily there's a lot more to test than low-level event
handling in these tests.
Carlos Garnacho [Mon, 20 Dec 2010 11:26:11 +0000 (12:26 +0100)]
GtkStyleProperties: Assign default value for the font property
This fixes a failure when running make test, where style queries
happened before there was even an screen.
Ivar Smolin [Mon, 20 Dec 2010 11:54:25 +0000 (13:54 +0200)]
[l10n] Updated Estonian translation
Javier Jardón [Mon, 20 Dec 2010 11:51:39 +0000 (11:51 +0000)]
Baurzhan Muftakhidinov [Mon, 20 Dec 2010 11:06:25 +0000 (17:06 +0600)]
Updates to Kazakh translation
Matthias Clasen [Mon, 20 Dec 2010 04:45:21 +0000 (23:45 -0500)]
Fix up symbol lists
Javier Jardón [Sun, 19 Dec 2010 20:43:30 +0000 (20:43 +0000)]
Move GtkSelectionData to a private header
Mahyar Moghimi [Sun, 19 Dec 2010 10:12:39 +0000 (13:42 +0330)]
Updating Persian translations (minor change)
Nguyễn Thái Ngọc Duy [Sun, 19 Dec 2010 09:23:47 +0000 (16:23 +0700)]
po/vi.po: import some translations from Ubuntu/Maverick
Yaron Shahrabani [Sun, 19 Dec 2010 07:09:16 +0000 (09:09 +0200)]
Updated Hebrew translation
Javier Jardón [Sun, 19 Dec 2010 05:01:22 +0000 (05:01 +0000)]
gtktreeselection: Move public members to a private structure
Javier Jardón [Sun, 19 Dec 2010 04:55:36 +0000 (04:55 +0000)]
gail: Use accessor functions to access GtkTreeSelection
Javier Jardón [Sun, 19 Dec 2010 04:55:14 +0000 (04:55 +0000)]
gtk/gtktreeview.c: Use accessor to access GtkTreeSelection
Javier Jardón [Sun, 19 Dec 2010 01:27:41 +0000 (01:27 +0000)]
gtkcombobox.c: Use accessor functions to access GtkTreeSelection
Matthias Clasen [Sat, 18 Dec 2010 22:46:19 +0000 (17:46 -0500)]
Remove G_SEAL from private headers
Matthias Clasen [Sat, 18 Dec 2010 22:45:31 +0000 (17:45 -0500)]
Remove sealed members from GtkPrintJob
Also add accessors for these members, and use them in print backends.
Matthias Clasen [Sat, 18 Dec 2010 22:35:06 +0000 (17:35 -0500)]
Don't use GtkSocket internals in gail
Matthias Clasen [Sat, 18 Dec 2010 22:32:58 +0000 (17:32 -0500)]
Fix gdk symbols after recent changes
Matthias Clasen [Sat, 18 Dec 2010 05:45:13 +0000 (00:45 -0500)]
Remove sealed members from GtkSocket
Jorge González [Sat, 18 Dec 2010 13:39:36 +0000 (14:39 +0100)]
Updated Spanish translation
Carlos Garnacho [Sat, 18 Dec 2010 10:27:26 +0000 (11:27 +0100)]
Remove dead Gtk[Rc]Style code
Most code in gtkrc.c has been turned into a no-op, but that one
reverting in public API (gtk_rc_scanner_new() and such). GtStyle
is also more shallow, now fully relies in the backing
GtkStyleContext and all connection to gtkrc.c has been removed.
GtkBinding has been also affected, there is no replacement yet
for custom keybindings in style files, so that piece of code that
hooked into gtkrc has been replaced by a FIXME so in the future
it may be added back.
Carlos Garnacho [Sat, 18 Dec 2010 10:26:48 +0000 (11:26 +0100)]
Adapt gtk_widget_set_name() docs to style context.
Carlos Garnacho [Sat, 18 Dec 2010 10:23:21 +0000 (11:23 +0100)]
GtkWindow: remove deprecated call.
gtk_style_context_reset_widgets() can be used now to reset all widgets
in a screen.
Matthias Clasen [Sat, 18 Dec 2010 04:49:27 +0000 (23:49 -0500)]
Remove sealed members from GtkTreeModelSort
Matthias Clasen [Sat, 18 Dec 2010 02:50:18 +0000 (21:50 -0500)]
Add the private struct in class_init
Matthias Clasen [Sat, 18 Dec 2010 02:45:20 +0000 (21:45 -0500)]
Remove sealed members from GtkTreeStore
Matthias Clasen [Sat, 18 Dec 2010 02:43:42 +0000 (21:43 -0500)]
Avoid accidental exports
Matthias Clasen [Sat, 18 Dec 2010 01:54:13 +0000 (20:54 -0500)]
Remove an unused pointer from GtkDrawingArea
This is part of removing all sealed members from instance structures.
Matthias Clasen [Sat, 18 Dec 2010 01:41:16 +0000 (20:41 -0500)]
Hide GtkWindowGroup members
In the process of removing all sealed members from headers.
At the same time, add a gtkwindowprivate.h header and move
all internal functions from gtkwindow.h there.
Matthias Clasen [Sat, 18 Dec 2010 00:14:35 +0000 (19:14 -0500)]
Trivial changes
Whitespace fixes, comment formatting, etc
Matthias Clasen [Fri, 17 Dec 2010 23:39:59 +0000 (18:39 -0500)]
Don't query the position of keyboards
Turns out that this causes X errors with the XI2 implementation.
Matthias Clasen [Fri, 17 Dec 2010 19:58:21 +0000 (14:58 -0500)]
No links in title, please
Colin Walters [Fri, 17 Dec 2010 20:36:51 +0000 (15:36 -0500)]
gdkwindow: Fix event unref iteration
We were double looping previously which caused a NULL deref.
Matthias Clasen [Fri, 17 Dec 2010 19:53:43 +0000 (14:53 -0500)]
Fix an escaping problem
& must be escaped as & in examples.
Matthias Clasen [Fri, 17 Dec 2010 19:51:53 +0000 (14:51 -0500)]
Another doc format problem
Matthias Clasen [Fri, 17 Dec 2010 19:50:55 +0000 (14:50 -0500)]
Fix a doc comment format problem
Parameters / enum values come first, then the paragraph.
Matthias Clasen [Fri, 17 Dec 2010 19:47:56 +0000 (14:47 -0500)]
More parameter name mismatches
Matthias Clasen [Fri, 17 Dec 2010 19:46:18 +0000 (14:46 -0500)]
Fix a few parameter name mismatches
Matthias Clasen [Fri, 17 Dec 2010 19:31:44 +0000 (14:31 -0500)]
Add deprecation guards for gtk_icon_set_render_icon
Matthias Clasen [Fri, 17 Dec 2010 19:27:48 +0000 (14:27 -0500)]
Avoid a gtk-doc warning
Matthias Clasen [Fri, 17 Dec 2010 19:24:25 +0000 (14:24 -0500)]
Adjust symbol lists in the docs
Cosimo Cecchi [Mon, 13 Dec 2010 16:54:02 +0000 (17:54 +0100)]
widgetpath: allow GTypes non-derived from GTK_TYPE_WIDGET
This makes things like GtkCellRenderer or GtkNumerableIcon more easily
themeable.
https://bugzilla.gnome.org/show_bug.cgi?id=637169
Colin Walters [Fri, 17 Dec 2010 13:03:01 +0000 (08:03 -0500)]
gdk: Fix GdkWindowFilter internal refcounting
Running gnome-shell under valgrind, I saw the attached invalid write.
Basically we can destroy a window during event processing, and the old
window_remove_filters simply called g_free() on the filter, ignoring
the refcount. Then later in event processing we call filter->refcount--,
which is writing to free()d memory.
Fix this by centralizing list mutation and refcount handling inside
a new shared _gdk_window_filter_unref() function, and using that
everywhere.
==13876== Invalid write of size 4
==13876== at 0x446B181: gdk_event_apply_filters (gdkeventsource.c:86)
==13876== by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
==13876== by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
==13876== by 0x446B009: gdk_event_source_dispatch (gdkeventsource.c:317)
==13876== by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
==13876== by 0x4AB7957: g_main_context_iterate.clone.5 (gmain.c:3087)
==13876== by 0x4AB806A: g_main_loop_run (gmain.c:3295)
==13876== by 0x8084D6B: main (main.c:722)
==13876== Address 0x1658bcac is 12 bytes inside a block of size 16 free'd
==13876== at 0x4005EAD: free (vg_replace_malloc.c:366)
==13876== by 0x4ABE515: g_free (gmem.c:263)
==13876== by 0x444BCC9: window_remove_filters (gdkwindow.c:1873)
==13876== by 0x4454BA3: _gdk_window_destroy_hierarchy (gdkwindow.c:2043)
==13876== by 0x447BF6E: gdk_window_destroy_notify (gdkwindow-x11.c:1115)
==13876== by 0x43588E2: _gtk_socket_windowing_filter_func (gtksocket-x11.c:518)
==13876== by 0x446B170: gdk_event_apply_filters (gdkeventsource.c:79)
==13876== by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
==13876== by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
==13876== by 0x446B009: gdk_event_source_dispatch (gdkeventsource.c:317)
==13876== by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
==13876== by 0x4AB7957: g_main_context_iterate.clone.5 (gmain.c:3087)
https://bugzilla.gnome.org/show_bug.cgi?id=637464
Kristian Rietveld [Fri, 17 Dec 2010 15:51:42 +0000 (16:51 +0100)]
Fix size allocation for list mode combo box
Kristian Rietveld [Fri, 17 Dec 2010 15:30:15 +0000 (16:30 +0100)]
Set cell_view to NULL immediately after unparenting
This way we are sure no invalid pointer will be accessed in between.
Kristian Rietveld [Fri, 17 Dec 2010 12:15:27 +0000 (13:15 +0100)]
Check if popup_window is mapped, not popup_widget
Before hide_all was used on popup_window, which means popup_widget
was also unmapped. This is now no longer the case. This fixes
subsequent pop ups for appears-as-list == 1.
Benjamin Otte [Fri, 17 Dec 2010 14:41:59 +0000 (15:41 +0100)]
selection: constify GtkSelectionData getters
Carlos Garnacho [Fri, 17 Dec 2010 02:17:13 +0000 (03:17 +0100)]
Remove *_set_extension_events() and old API to query devices.
The old functions to get core pointer and devices list are gone as
well. This slice is entirely replaced internally by multidevice
handling and may just go.
Bastien Nocera [Fri, 10 Dec 2010 15:05:50 +0000 (15:05 +0000)]
gtk: Add symbolic property for GtkVolumeButton
When the application prefers symbolic icons, avoids
having to reimplement the button in the software itself.
https://bugzilla.gnome.org/show_bug.cgi?id=636969
Kjartan Maraas [Fri, 17 Dec 2010 12:09:58 +0000 (13:09 +0100)]
Updated Norwegian bokmål translation
Tristan Van Berkom [Fri, 17 Dec 2010 09:15:08 +0000 (18:15 +0900)]
Fixed gtk_entry_set_icon_tooltip_text & markup to not crash
Setting this property before the icon is actually set was
resulting in a crash (found by way of Glade bug 606103).
Tristan Van Berkom [Fri, 17 Dec 2010 06:35:21 +0000 (15:35 +0900)]
Fixed parameter names in gtkcellarea.h for gtk-doc parsing.
Tristan Van Berkom [Fri, 17 Dec 2010 06:26:28 +0000 (15:26 +0900)]
Fixed documentation of GtkCellLayout <cell-packing>
Mention that it's safe to use <cell-packing> tag for any GtkCellLayout
in GTK+ since they *all* use an underlying GtkCellArea (at least they
will once the other branches land).
Tristan Van Berkom [Fri, 17 Dec 2010 06:25:15 +0000 (15:25 +0900)]
Merge branch 'master' into treeview-refactor
Conflicts:
tests/testtreeedit.c
Kristian Rietveld [Thu, 16 Dec 2010 22:33:42 +0000 (23:33 +0100)]
Avoid recursion in do_validate_rows()
I have never really liked the updates done to the adjustments in
do_validate_rows() and other validation functions. But it is really
required. I have to come up with a real solution to this one day.
Kristian Rietveld [Thu, 16 Dec 2010 21:42:10 +0000 (22:42 +0100)]
Should pass inner_area to cell in gtk_cell_area_activate_cell()
Kristian Rietveld [Thu, 16 Dec 2010 11:33:00 +0000 (12:33 +0100)]
Clip focus rectangle to background area
Kristian Rietveld [Thu, 16 Dec 2010 11:26:18 +0000 (12:26 +0100)]
Fix background area calculation in RTL mode
Javier Jardón [Thu, 16 Dec 2010 00:16:00 +0000 (00:16 +0000)]
docs: gtknotebook.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:56:28 +0000 (23:56 +0000)]
gtk/gtkclipboard.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:56:14 +0000 (23:56 +0000)]
gtk/gtkcolorbutton.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:55:59 +0000 (23:55 +0000)]
gtk/gtkcolorsel.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:55:45 +0000 (23:55 +0000)]
gtk/gtkdnd.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:55:31 +0000 (23:55 +0000)]
gtk/gtkfilechooserbutton.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:55:18 +0000 (23:55 +0000)]
gtk/gtkfilechooserdefault.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:55:04 +0000 (23:55 +0000)]
gtk/gtkiconview.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:54:49 +0000 (23:54 +0000)]
gtk/gtklinkbutton.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:54:22 +0000 (23:54 +0000)]
gtk/gtknotebook.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:53:00 +0000 (23:53 +0000)]
gtk/gtktextbuffer: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:52:40 +0000 (23:52 +0000)]
gtk/gtktextview.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:52:26 +0000 (23:52 +0000)]
gtk/gtktoolpalette.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:52:02 +0000 (23:52 +0000)]
gtk/gtktreednd.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:51:23 +0000 (23:51 +0000)]
gtk/gtktreeview.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:57:13 +0000 (23:57 +0000)]
demos/gtk-demo/clipboard.c: Use accessor functions to access GtkSelectionData
Javier Jardón [Wed, 15 Dec 2010 23:47:45 +0000 (23:47 +0000)]
tests: Use accessor functions to access GtkSelectionData
Kristian Rietveld [Wed, 15 Dec 2010 23:07:08 +0000 (00:07 +0100)]
Clip to cell_area when rendering cell content
This fixes a GTK+ 3.0 regression. In GTK+ 2, the render method
on GtkCellRenderer had a expose_area parameter, typically set to
cell_area. This parameter was used for clipping cell content to be
rendered to the cell area (and thus clipping to within the focus
rectangle). During the rendering clean up this parameter was removed
and no clipping put back into place.
Since expose_area was usually equal to cell_area anyway, it does not make
sense to reintroduce the expose_area parameter. Instead, we do clipping at
two levels:
- in gtk_cell_renderer_render() we clip to background_area. We cannot
clip to cell_area here because we want to allow cell renderers to
render in the background area (e.g. background color/effect).
- cell renderers should clip to clip_area when rendering cell
content individually (as they had to individually clip to expose_region
before).
Kristian Rietveld [Wed, 15 Dec 2010 22:45:04 +0000 (23:45 +0100)]
Revisit "Handle clicks in indentation area"
Check (x, y) is inside background area. If yes, continue processing
and clamp the coordinates into cell area. This way we will properly
handle getting a cell (which is only used for setting the focus cell)
for clicks in the indentation area (in LTR and RTL mode) and clicks
in the focus rectangle area in case focus-line-width is large.
Jorge González [Wed, 15 Dec 2010 21:00:00 +0000 (22:00 +0100)]
Updated Spanish translation
Kristian Rietveld [Wed, 15 Dec 2010 20:36:47 +0000 (21:36 +0100)]
Make testtreeview handle RTL environment variable for testing
Kristian Rietveld [Wed, 15 Dec 2010 20:31:35 +0000 (21:31 +0100)]
RTL fix for gtk_tree_view_focus_to_cursor()
Kristian Rietveld [Wed, 15 Dec 2010 20:27:40 +0000 (21:27 +0100)]
No need to correct direction for rtl, GtkCellArea takes care of that
Kristian Rietveld [Wed, 15 Dec 2010 20:22:35 +0000 (21:22 +0100)]
Make testcellarea handle RTL environment variable for testing
Kristian Rietveld [Wed, 15 Dec 2010 20:17:27 +0000 (21:17 +0100)]
Correct calculation of the cell focus rectangle
The cell's focus rectangle is located around the cell's aligned area.
To get to the correct coordinates for this rectangle, we have to subtract
focus_line_width from the found aligned_area.
Carlos Garnacho [Wed, 15 Dec 2010 14:27:49 +0000 (15:27 +0100)]
Remove debug messages from GdkDevice
Benjamin Otte [Wed, 15 Dec 2010 13:29:37 +0000 (14:29 +0100)]
tests: Hardcode testinput colors instead of trying to use GtkStyle
Makes it work with new themeing APIs.
Benjamin Otte [Wed, 15 Dec 2010 13:29:04 +0000 (14:29 +0100)]
tests: Make testiconview-keynav set its custom style using CSS.
Benjamin Otte [Wed, 15 Dec 2010 13:25:19 +0000 (14:25 +0100)]
cssprovider: Explode if we fail to parse the default CSS
This can only happen if somebody really messed up with a checkin, and in
that case we want to explode early.
Benjamin Otte [Wed, 15 Dec 2010 11:44:26 +0000 (12:44 +0100)]
gail: Fix for new style code